import Vue from 'vue'
import Vuex from 'vuex'
//引入封装好的模块
import menu from './modules/menu'
import role from './modules/role'
import user from './modules/user'
import cate from './modules/cate'
import specs from './modules/specs'
import goods from "./modules/goods";
import member from "./modules/member"
import banner from './modules/banner'
import seckill from './modules/seckill'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    userinfo:sessionStorage.getItem('userinfo')? JSON.parse(sessionStorage.getItem('userinfo')) :null
  },
  getters: {
    getUser(state){
      return state.userinfo
    }
  },
  mutations: {
    REQ_USERINFO(state,payload){
      if(payload){
        state.userinfo = payload
        //把结果存储到会话存储中
        sessionStorage.setItem('userinfo',JSON.stringify(payload))
      }else{
        //清空存储（移除）
        sessionStorage.removeItem('userinfo')
      }
      
    }
  },
  actions: {
    changeUserAction({commit},payload){
      commit('REQ_USERINFO',payload)
    }
  },
  modules: {
    menu,
    role,
    user,
    cate,
    specs,
    goods,
    member,
    banner,
    seckill
  }
})
